User behavior indicator

ABSTRACT

Techniques for determining user behavior related to media are described. A media file containing media is received. The media is partitioned into segments. The user-interaction analyzer monitors user behavior with respect to viewing the media and the segments. The user&#39;s behavior with respect to viewing the segments is logged. Normal user behavior with respect to the media is determined and stored. Logged user behavior with respect to interaction with a segment of the media is compared with the normal user behavior with respect to the media. Logged user behavior of a particular media segment that deviates from normal relative to the determined normal user behavior is determined. A particular media segment that is not normal is tagged. A user device is configured to display indicia indicating user behavior related to media to help inform which parts users tend to like the most.

BACKGROUND

Video hosting refers to service where users distribute videos, typicallyfound on the Internet. Video-hosting websites allow users to discovervideos available over the Internet. A user discovers videos of interestby submitting a search query to the video-hosting website or browsing indifferent categories or channels of the video-searching website. Usingeither approach, the video host presents the user with a list of videosfrom which he or she can choose.

Once a user finds a video of interest and selects a link to the video,the user loads a webpage associated with the video and views the videoand/or details of the video. The video-hosting website allows a user tosearch and view videos contained within the video-hosting website, orvideos located on or sourced from other websites.

SUMMARY

Described herein are techniques for determining user behavior related tomedia interaction, such as viewing a video. Techniques for determininguser behavior related to media are described. A media file containingmedia is received. The media is partitioned into segments. Theuser-interaction analyzer monitors user behavior with respect to viewingthe media and the segments. The user's behavior with respect to viewingthe segments is logged. Normal user behavior with respect to the mediais determined and stored. Logged user behavior with respect tointeraction with a segment of the media is compared with the determinednormal user behavior with respect to the media. Whether logged userbehavior of a particular media segment deviates from normal relative tothe determined normal user behavior is determined. Responsive to a notnormal determination of a particular media segment, that segment istagged. The tagged segment is communicated to a user device configuredto display indicia indicating user behavior related to media to helpinform which parts users tend to like the most.

BRIEF DESCRIPTION OF THE FIGURES

The detailed description refers to the following accompanying drawings:

FIG. 1 displays a screen shot illustrating an example of a userinterface displaying videos associated with a user search query inaccordance with one or more implementations described herein.

FIG. 2 displays a screen shot illustrating an example of a userinterface displaying the target video in accordance with one or moreimplementations described herein.

FIG. 3 displays a screen shot illustrating the example of FIG. 2 withthe target video at a different play segment in accordance with one ormore implementations described herein.

FIG. 4 displays a high-level block diagram of example computerarchitecture in which techniques for determining user behavior relatedto videos can be employed in accordance with one or more implementationsdescribed herein.

FIG. 5 displays a high-level block diagram of an example media-hostingservice system architecture in which techniques for determining userbehavior related to videos can be employed in accordance with one ormore implementations described herein.

FIG. 6 displays a flow chart of an example process for determining userbehavior related to videos in accordance with one or moreimplementations described herein.

FIG. 7 displays a screen shot illustrating another example of a userinterface displaying the target video in accordance with one or moreimplementations described herein.

DETAILED DESCRIPTION

Overview

Content delivery systems provide Internet users access to an enormousselection of media content, such as video. Non-professionals produce alarge proportion of this video content, resulting in many videosconsidered less interesting or too long to be of interest. Many timeswhen a viewer selects a video, that video contains segments of materialin which the user is less interested. The user must put forth effort toview the content of the individual videos to determine if the videocontains relevant material. Accordingly, users can view videos withoutrelevant or interesting content instead of related videos with trulyrelevant or interesting material.

In addition, many videos that people watch online, even whenprofessionally produced, are quite long, for example an hour or longer.Sometimes there are parts that are less interesting that users choose toskip. Other times there are parts that are particularly interesting thatusers repeat. For example, soccer matches are often recorded live, thenreplayed in their entirety. Soccer matches consist of two 45 minuteperiods. Often during the match, the teams are controlling the ball andjockeying for advantage. These long stretches can be interrupted withexhilarating segments, such as when a goal is scored, a goalie makes agreat save, a penalty kick is rewarded, and the like.

When viewing such video, each user discovers the parts that are lessinteresting or more interesting. And each user has to find the partsthat matter or choose to abandon the video. By way of further example, amusic video might start slow and not have interesting initial content.Later, the music video may have a spectacular visual and song, but theuser misses this interesting content because the user might have stoppedwatching or skipped to the wrong part.

Still further, sometimes someone who is passionate about a topic ormanaged to find an interesting part of a video shares that video. Whenthe video is shared, the people viewing might not have the interest towatch the full video to find the interesting part, which is necessary inorder for them to be able to decide whether the video is worthresharing. More content sharing is important for a social network toincrease activity.

FIG. 1 displays an example user interface 101 illustrating a result pageresponsive to a user querying the keyword “Ducati” into a dialog box103, for videos related to products sold by Ducati Motor Holding S.P.A.For the keyword, the user interface 101 lists appropriate videosretrieved from a video repository. Examples of appropriate videosinclude “La storia della Ducati Superbike” 105 and “Lamborghini Gallardovs. Ducati 999” 107. After reviewing the result page, the user selects atarget video from the result page to watch.

After selection of the target video, a front-end interface transmits andpresents the requested video and related-video links to the user. Inaddition, icon or thumbnail views of related videos accompany the links,along with associated metadata such as, for example, title, author,tags, and rating. For example, if a user provides the front-endinterface with a request for a specific video with the title of “Lastoria della Ducati Superbike”, the front-end interface presents theselected target video to the user along with links to related videos.

FIG. 2 displays an example webpage 201 playing the video 203 with thetitle of “La storia della Ducati Superbike” 205. The webpage 201contains controls 207 that allow a user to control how and when to playthe video 201. Such controls 207 can include, for example, a play/pausebutton 209, a progress bar 211 that allows a user to skip ahead orrepeat, a timer 213, a volume control 215, and a screen size adjustment217. A video-information box 219 contains information about the video. Arelated-videos box 221 contains links to videos that a video-hostingservice has determined to display as related to video 203. Avideo-serving module retrieves the related videos from a videorepository for user presentation. If a user selects a link of a relatedvideo, the video-hosting service 201 plays the related video.

In FIG. 2, a segment of the video that is being displayed could be thebeginning, where less interesting information may be displayed. Forexample, perhaps the beginning of a video has advertising and technicalinformation such as engine displacement, top speed, 0-60 miles per hourtime, and the like.

FIG. 3 displays the same example webpage 201; however, in FIG. 3 a latersegment of the “La storia della Ducati Superbike” video 303 isdisplayed. For example, this later segment might show interestinghighlights from a motorcycle race.

Techniques for determining user behavior related to media interaction,such as viewing a video, are described. The term ‘techniques’ refers todevice(s), system(s), method(s) and/or computer-readable instructions aspermitted by the context above and throughout the document. A media filecontaining media is received. The media is partitioned into segments.The user-interaction analyzer monitors user behavior with respect toviewing the media and the segments. The user's behavior with respect toviewing the segments is logged. Normal user behavior with respect to themedia is determined and stored. Logged user behavior with respect tointeraction with a segment of the media is compared with the determinednormal user behavior with respect to the media. Whether logged userbehavior of a particular media segment deviates from normal relative tothe determined normal user behavior is determined. Responsive to a notnormal determination of a particular media segment, that segment istagged. The tagged segment is communicated to a user device configuredto display indicia indicating user behavior related to media to helpinform which parts users tend to like the most.

Referring back to FIG. 2, segment ratings are displayed to reflect userbehavior related to media. In one example, a viewer intensity chart 225is depicted. The viewer intensity chart 225 can be used in conjunctionwith the progress bar 211. The viewer intensity chart 225 provides avisual depiction of which parts of the video other users liked or not.In FIG. 2, the video is at the early stages—in this example 2:00minutes. Relatively less interesting content is being displayed, asindicated by the viewer intensity chart 225. Referring to FIG. 3, thevideo is at a later stage—here 5:00 minutes. This later segment showinginteresting highlights from a motorcycle race is identified asrelatively more interesting content, as indicated by the viewerintensity chart 225.

This brief overview, as well as section titles and correspondingsummaries, are provided for the reader's convenience and are notintended to limit the scope of the claims or the proceeding sections.

The Internet

As mentioned previously, video hosting is typically found on theInternet. The Internet connects a global network of computers. Networkservers support hypertext capabilities that permit the Internet to linktogether websites. Hypertext is text displayed on a computer or otherelectronic devices with references (for example, hyperlinks) to othertext. Users navigate the Internet through graphical-user interfaces(GUI). Uniform-resource locators (URLs) identify specific websites andweb pages. URLs also identify the address of the website to be retrievedfrom a network server. The transfer control protocol/internet protocol(TCP/IP) transfers information.

The Internet typically uses a hypertext language referred to as thehypertext mark-up language (HTML). HTML permits content providers toplace hyperlinks within web pages. These hyperlinks connect relatedcontent or data, which may be found on multiple Internet-host computers.HTML document links retrieve remote data by use of hypertext transferprotocol (HTTP). When a user clicks on a link in a web document, thelink icon in the document contains the URL that the client applicationemploys to initiate the session with the server storing the linkeddocument. HTTP is a protocol used to support the information transfer.

System Architecture

FIG. 4 displays a high-level block diagram of example computerarchitecture in which techniques for determining user behavior relatedto videos described herein can be employed. The computer system 400 caninclude, in addition to hardware, computer-executable instructionsstored in memory 404. A bus couples the memory 404 for storinginformation and instructions executable by processor 402. Specialpurpose logic circuitry can supplement or incorporate the processor 402and the memory 404.

The instructions may be stored in the memory 404 and implemented in oneor more computer program products. Computer program products can be oneor more modules of computer program instructions encoded on a computerreadable medium for execution by, or to control the operation of, thecomputer system 400. Memory 404 may store temporary variable or otherintermediate information during execution of instructions executable bythe processor 402.

The computer system 400 further includes a data storage device 406coupled to bus 408. The data storage device 406 stores information andinstructions. An input/output module 410 may couple computer system 400to various devices. The input/output module 410 can be any input/outputmodule. Examples of input/output modules 410 include data ports such asuniversal serial bus (USB) ports. The input/output module 410 connectsto a communications module 412. Examples of communications modules 412include networking interface cards, such as Ethernet cards and modems.

The input/output module 410 connects to a number of devices, such as aninput device 414 and/or an output device 416. Examples of input devices414 include a keyboard and a pointing device such as, for example, amouse, by which a user 415 can provide input to the computer system 400.Examples of output devices 416 include display devices such as, forexample, a liquid crystal display (LCD) monitor for displayinginformation to the user 415.

According to one aspect, the techniques can be implemented using acomputer system 400 in response to processor 402 executing one or moresequences of one or more instructions contained in memory 404. Anothermachine-readable medium, such as data storage device 406, may read suchinstructions into memory 404. Execution of the sequences of instructionscontained in memory 404 causes processor 402 to perform the processsteps described herein.

Computing system 400 can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

FIG. 5 shows a high-level block diagram of an example video-hostingservice 501 that determines user behavior related to videos. Generally,the video-hosting service 501 represents any system that allows users toaccess video content via searching and/or browsing interfaces. In oneimplementation, the video-hosting service 501 makes available additionaltypes of media. In addition to video, examples of media include audiomedia files such as music, podcasts, audio books, and the like;multimedia presentations; and so forth.

The video-hosting service 501 represents a system that stores andprovides videos to users. The video-hosting service 501 communicateswith a number of content providers 507 and clients 509 via a network513. The configuration and management of large networks includes storagedevices and computers that are communicatively coupled to dissimilarcomputers and storage devices. The network 513 is typically theInternet, but may be any network.

The client 509 is a computing device that executes client software suchas, for example, a web browser 511 to load a website. The client 509connects to the video-hosting service 501 via the network 513 to displayvideos. The client 509 can include a variety of different computingdevices. Examples of computing devices include digital assistants,personal digital assistants, cellular phones, mobile phones, smartphones, laptop computers, tablet computers, and the like.

In some implementations, the client 509 includes an embedded-videoplayer such as, for example, the FLASH® video player available fromAdobe Systems Incorporated. Of course, the client 509 can include otherplayers adapted for the video file formats used in the video-hostingservice 501.

The videos are sourced from user uploads, searches or crawls of otherwebsites or databases of videos, and combinations thereof. Thevideo-hosting service 501 obtains data from various external websites503. The websites 503 include one or more web pages accessible to thevideo-hosting service 501 via the network 513. The web pages include,for example, textual content such as HTML.

The user of the content provider 507 performs various content-providerfunctions. Examples of content-provider functions include uploading avideo to the video-hosting service 501, editing a video stored by thevideo-hosting service 501, editing metadata information about a video,editing content-provider preferences associated with a video, and thelike. For the sake of clarity, FIG. 5 depicts only one instance ofwebsite 503 and content provider 507, though there could be any numberof each. In addition, while only one client 509 is shown, thevideo-hosting service 501 supports and communicates with very largenumbers (such as millions) of clients at any time.

The video-hosting service 501 includes a front-end interface 515, avideo-serving module 517, a video-search module 519, an upload server521, a video repository 523, a user-interaction analysis module 527including a user-interaction results database 529, a related-videosdatabase 531, a video access log 533, and a user database 535. Otherconventional features such as, for example, firewalls, load balancers,authentication servers, application servers, failover servers,site-management tools, and so forth are not shown so as to illustratemore clearly the features of the system.

The front-end interface 515 interfaces between the client 509 and thevarious components of the video-hosting service 501. The upload server521 receives video content from a content provider 507. The videorepository 523 contains a set of videos 525 submitted by contentproviders 507. The video repository 523 contains any number of videos525 such as, for example, tens of thousands or hundreds of millions. Thevideo repository 523 can be implemented using a database or file system,with indexing system for indexing and retrieving videos. A unique videoidentifier distinguishes each video from other videos, such as a textualname (for example, the string “a91qrx8”), an integer or any other way ofuniquely naming a video.

In addition to audiovisual content, the videos 525 include associatedmetadata 525A. Examples of metadata include textual metadata such as atitle, description, and/or tags provided by a content provider 507 whouploaded the video or metadata obtained by an analysis of a video doneby the video-hosting service 501.

Using the video-search module 519, clients 509 search for videos fromthe video-hosting service 501 using keywords, browse various categoriesor channels, review play lists from other users or the systemadministrator (such as collections of videos forming channels), viewvideos associated with particular user groups (such as communities), andthe like. The video-search module 519 locates appropriate videos in thevideo repository 523 to return to the client 509. The video-servingmodule 517 provides video data from the video repository 523 to theclient 509. The user interaction-analysis module 527 determines whenuser behavior with respect to viewing the media segment is not normal.The user-interaction database 529 stores tagged media segments, asdetailed below.

Various containers or wrappers package the videos 525. A container is ameta-file format whose specification describes how different dataelements and metadata coexist in a computer file. Examples of meta-fileformat include audio video interleave or interleaved (AVI) multimediacontainer standard specified available from Microsoft Corporation; MP4multimedia-container standard based on the International Organizationfor Standardization (ISO) base-media-file format defined in MPEG-4 Part12 and JPEG-2000 Part 12; QuickTime file format (QTFF) (.mov) developedby Apple Inc.; and the like.

Video codecs encode the videos 525. A video codec enables videocompression and/or decompression for digital video. An example of avideo codec is the advanced video coding (AVC) standard H.264/MPEG-4,Part 10 developed by the International Telecommunication Union (ITU) TVideo Coding Experts Group (VCEG) together with the (ISO)/InternationalElectrotechnical Commission (IEC) Moving Picture Experts Group.

User Behavior

As previously introduced, techniques for determining user behaviorrelated to media to help inform which parts users tend to like the mostare described herein. Example implementations rate segments of mediaaccording to how interesting (or less interesting) the segments of mediaare to typical users. User experience is improved by providingindicators to show where these trends tend to happen to help usersdiscover the content that matters. These interactions are describedbelow with respect to an implementation for video media.

A video is partitioned into segments. The segments should besufficiently long that a statistically significant measure can be madebut sufficiently short that meaningful distinctions on the interestlevel displayed by a typical viewer when viewing the segment can bemeasured. In one implementation, the segments can be approximately 10seconds each.

Segments of a video are scored based on the interest level displayed bya typical viewer when viewing the segment. Interest level can bedetermined in various ways. For example, users repeating a segment,skipping a segment, pausing on a segment, and/or repeating a segment canbe utilized to determine interest levels.

Associated with each video, the number of pauses, plays, skips, and/orrepeats are logged. Initially, video use is monitored to identifybehavior that deviates from normal. In one implementation, the averagenumber of pauses, plays, skips or repeats for a given video segment aredetermined. This establishes a baseline level of user interest againstwhich to compare the user interest with respect to a given segment.

The number of pauses, plays, skips or repeats for a given segment aredetermined. The number of pauses, plays, skips or repeats for a givensegment are compared against the number of pauses, plays, skips orrepeats in the baseline level of user interest.

The standard deviation or dispersion from the baseline level of userinterest is determined. A low standard deviation indicates that the datapoints tend to be very close to the mean, whereas high standarddeviation indicates that the data points are spread out over a largerange of values. A threshold standard deviation level is determined thatrepresents a statistically significant level of user interest. In oneimplementation, if the number of pauses, plays, skips or repeats extendsover a full standard deviation greater than ‘normal’, then this timesegment can be tagged.

In further implementations, more sophisticated metrics can be monitoredand measured. For example, user comments on the video can be utilized,such as when a user comment mentions a specific moment in the video.Links into a specific point in the video can be utilized.

Also, users can directly enter their interest levels. The user canprovide an ‘interesting level’ per segment, or provide comparativemeasures, as in ‘segment 1 is more interesting than segment 2’. Anexample of how to train a model based on relative human judgment (asopposed to based on human ordinal scoring) is seen in Chechik, Sharma,Shalit, Bengio, “Large Scale Online Learning of Image Similarity ThroughRanking”, 11 Journal of Machine Learning Research 1109 (March 2010)(available at jmlr.csail.mit.edu/papers/v11/chechik10a.html).

Additional viewer interactions signaling deeper interactions with avideo can be measured. Examples include whether a viewer takes action ona segment to share, post a comment, chat, make an annotation, transitionfrom a seek action to a play action, go to full screen, and/or retractfrom full screen. The latter example may indicate a less interestingsegment, whereas the former examples may indicate an interestingsegment.

Regression analysis and other types of filtering (for example,smoothing) operations may be performed on some of the measuredquantities described above. Regression analysis refers to a statisticaltechnique for estimating the relationships among variables. Variousexamples of regression analysis include the linear regression model,simple linear regression, logistic regression, nonlinear regression,nonparametric regression, robust regression, and stepwise regression.

In a further implementation, looking at data about user behavior acrossjust all users can leave out insights that come from focusing on aparticular user or group of users. Example of categorizing a particularuser or group of users include particulars such as language, location,and interests. A further example is user information such as a user'slocation.

For example, consider a video about an incredible soccer play of thehometown team. The video could have data that is useful and interestingto the user when considering who in the team's area watched the video.Different groups might be more likely to replay and pause particularparts of the video. Also, the identified parts can be based on theinterests of the user and the interest of the people who watched thevideo. For example, people interested in racing might tend to jump to aparticular part that they find interesting, while people interested inmotorcycles might tend to jump to a particular part that they findinteresting. This information can be surfaced to other people interestedin racing or motorcycles.

FIG. 6 is a flow chart illustrating operations of the video-hostingservice 401 in determining user behavior related to videos according toone implementation. Other implementations perform the steps of FIG. 6 indifferent orders. In addition, other implementations include differentand/or additional steps than the steps described herein. In oneimplementation, the steps of FIG. 6 are performed by one more executableprograms that are part of the video-hosting service 401 in response tothe video being uploaded to the video-hosting service 401 for storage.In another implementation, the steps of FIG. 6 are performed by thevideo-hosting service 401 in response to a user request to view thespecific video stored on video-hosting service 401.

When a video is received (602), the video is partitioned into segments(604). Users' behavior with respect to the segments is monitored (606).User behavior with respect to the segments is logged (608). ‘Normal’behavior is determined (610). If the number of pauses, plays, skipsand/or repeats for a given video segment exceeds a standard deviation,then the segment is tagged (612). Tagged segments are rated based on thenumber of pauses, plays, skips, and/or repeats that exceed a standarddeviation (616). Segment ratings are displayed with the video (618).

Referring to FIG. 7, another example of a display to show where thesetrends happen to help users discover the content that matters is seen,where like numbers depict like elements from FIG. 2. Again, a viewerintensity chart 225 is depicted. Again, the user again is provided witha visual image of what in the video other users ‘like’.

In this example, a highlight box 227 displays the segments of the videowhere users tend to watch more heavily that the rest of the video.Clicking ‘play all’ shows the replayed parts of a video in a row, whichis useful because sometimes the replayed parts can be small segments andotherwise clicking on each one individually would take a while.

In addition, in this example a paused box 229 displays the segments ofthe video where users tend to pause more heavily than the rest of thevideo. Clicking “view frames” shows frame-by-frame the parts of thevideo that were paused or shows that segment in slow motion or withframe transitions to let the users focus on the content that usersidentified as interesting. On both examples, images are shown of thecontext of the video at those points to help the user decide. Forexample, the replayed/paused/played parts might show highlights of aremarkable motorcycle race, while otherwise watching the first part ofthe video might focus on someone giving historical context of the race.

Thus, by utilizing techniques for determining user behavior related tomedia described herein users will waste less valuable time with mediawithout relevant or interesting content instead of related media withtruly relevant or interesting material.

For the purposes of convenience, the uploaded media is sometimesdescribed in a ‘video’ or ‘videos’ implementation; however, limitationson the types of uploaded media are not intended. Thus, the operationsdescribed herein apply to any type of media, not only videos. Examplesof media include audio files such as music, podcasts, audio books, andthe like; multimedia presentations; and so forth.

The implementation described herein is not inherently related to anyparticular hardware or other apparatus. The operations of thevideo-hosing service can be controlled through either hardware orthrough computer programs installed in computer storage and executed bythe processors of servers. One or more processors in a multi-processingarrangement also may be employed to execute the sequences ofinstructions.

When embodied as hardware, the hardware may be specially constructed forthe required purposes or the hardware may include a general-purposecomputer selectively activated or reconfigured by a computer programstored on a computer-readable medium. In addition, the implementationdescribed herein is not limited to any particular programming language.

The video-hosting service may be implemented using a single computer ora network of computers, including cloud-based computing. The computerscan be server-class computers including one or more high-performancecentral processing units (CPUs), memory such as, for example, onegigabyte (1 GB) or more of main memory, as well as 500 GB to twoterabyte (2 TB) of computer-readable persistent storage, networkinterface, peripheral interfaces, and other well-known components.

The computers can run an operating system. Examples of operating systemsinclude the LINUX® computer-operating system or variants thereof and thelike. LINUX® computer-operating system is an open-source operatingsystem that is available under a general-public license administered byThe Linux Foundation, 1796 18th Street, Suite C, San Francisco, Calif.94107. Of course, other types of operating system and computers can beused, and it is expected that more powerful computers developed in thefuture can be configured in accordance with the teachings herein.

In addition to the Internet, the network may be any network. Examples ofnetworks include local area networks (LAN), metropolitan area networks(MAN), campus area networks (CAN), wide area networks (WAN), mobilewired or wireless networks, private networks, virtual private networks,and the like. In addition, all or some of links can be encrypted usingconventional encryption technologies. Examples of encryptiontechnologies include the secure-sockets layer (SSL), secure http,virtual private networks (VPNS), and the like. Other implementationsutilize custom and/or dedicated data communications technologies insteadof, or in addition to, the communications technologies described above.

The terms client and content provider as used herein may refer tosoftware providing client and content-providing functionality, tohardware devices on which the software executes or to the entitiesoperating the software and/or hardware. The term ‘website’ representsany computer system adapted to serve content using any internetworkingprotocols, and is not limited to content uploaded or downloaded via theInternet or HTTP.

The term computer-readable media includes computer-storage media.Example include magnetic-storage devices such as hard disks, floppydisks, and magnetic tape; optical disks such as compact disks (CD) anddigital-versatile disks (DVD); magnetic-storage devices such as digitaltapes, floppy disks, and magneto-resistive-random-access memory (MRAM);non-volatile memory such as read-only memory (ROM),erasable-programmable-read-only memory (EPROMs), andelectrically-erasable-programmable-read-only memory (EEPROMs); volatilememory such as random-access memory (RAM), dynamic random access memory(DRAM), ferroelectric-random-access memory (FeRAM), andstatic-random-access memory (SRAM); or any type of media suitable forstoring electronic instructions.

Furthermore, at times arrangements of operations have been referred toas modules or by functional names, without loss of generality. The term‘module’ refers to computational logic for providing the specifiedfunctionality. The division of functionality between components, thenaming of modules, components, attributes, data structures or any otherprogramming or structural aspect is merely exemplary, and not mandatoryor significant. In addition, other implementations may lack modulesand/or distribute the described functionality among modules in adifferent manner. Functions performed by a component may instead beperformed by multiple components, and functions performed by multiplecomponents may instead performed by a single component. In general,functions described in one implementation as performing on the serverside can be performed on the client side in other implementations andvice versa, if appropriate.

Although the subject matter has been described with a specificimplementation, other alternatives, modifications, and variations willbe apparent to those skilled in the art. Accordingly, the disclosure isintended to be illustrative, but not limiting, and all suchalternatives, modifications, and variations are within the spirit andscope of the following claims.

What is claimed is:
 1. A system comprising: a database configured tostore media files; a processor communicatively coupled to the database;a user-interaction analyzer executable by the processor and configuredto: receive a media file containing media; partition the media intosegments; monitor user behavior with respect to the media and thesegments, the user behavior comprising viewing behavior with respect tothe media and the segments; log user behavior with respect to thesegments in the database; determine normal user behavior with respect tothe media; store such normal user behavior in the database; comparelogged user behavior with respect to a segment of the media with thedetermined normal user behavior with respect to the media; determinewhether logged user behavior of a particular media segment of the mediafile deviates from normal relative to the determined normal userbehavior; responsive to an not normal determination of a particularmedia segment, tag in the database the particular media segment as notnormal; and an interface operatively associated with the database, theinterface being configured to communicate with a user device regardingthe segments tagged as not normal.
 2. The system of claim 1, wherein theuser-interaction analyzer is further configured to monitor when a userchooses from the group consisting of pausing, playing, skipping,repeating, and combinations thereof.
 3. The system of claim 1, whereinthe user-interaction analyzer is further configured to tag a mediasegment when user behavior with respect to viewing a ten second segmentof the media deviates from normal.
 4. The system of claim 1, wherein theuser-interaction analyzer is further configured to tag a media segmentwhen user behavior with respect to viewing a segment of the media isgreater than one standard deviation.
 5. The system of claim 1, whereinthe interface is further configured to communicate with a user devicedisplaying a viewer intensity chart regarding the segments tagged as notnormal.
 6. A computer-implemented method comprising: receiving a mediafile containing media; partitioning the media into segments; monitoringuser behavior with respect to the media and the segments; logging userbehavior with respect to the segments in memory, the user behaviorcomprising viewing behavior with respect to the media and the segments;determining normal user behavior with respect to the media; storing suchnormal user behavior in memory; comparing logged user behavior withrespect to interaction with a segment of the media with the determinednormal user behavior with respect to the media; determining whetherlogged user behavior of a particular media segment of the media filedeviates from normal relative to the determined normal user behavior;responsive to an not normal determination of a particular media segment,tagging a media segment in memory; and communicating with a user deviceconfigured to display indicia indicating the segments tagged as notnormal.
 7. The computer-implemented method of claim 6 furthercomprising: monitoring when a user chooses from the group consisting ofpausing, playing, skipping, repeating, and combinations thereof.
 8. Thecomputer-implemented method of claim 6 further comprising: responsive toa not normal determination of a particular approximate ten second mediasegment, tagging a media segment in memory.
 9. The computer-implementedmethod of claim 6 further comprising: responsive to a not normaldetermination of a particular media segment is greater than one standarddeviation, tagging a media segment in memory.
 10. Thecomputer-implemented method of claim 6 further comprising: communicatingwith a user device configured to display a heat map indicating thesegments tagged as not normal.
 11. The computer-implemented method ofclaim 6 further comprising: communicating with a user device configuredto display a viewer intensity chart regarding the segments tagged as notnormal.
 12. The computer-implemented method of claim 6 furthercomprising: selecting the media from the group consisting of video,music, podcasts, audio books, multimedia presentations, and combinationsthereof.
 13. The computer-implemented method of claim 6 furthercomprising: communicating with a user device selected from the groupconsisting of digital assistants, personal digital assistants, cellularphones, mobile phones, smart phones, laptop computers, and combinationsthereof.
 14. A non-transitory computer-readable media includingprocessor-executable instructions that, when executed, cause one or moreprocessors to perform operations comprising: receiving a media filecontaining media; partitioning the media into segments; monitoring userbehavior with respect to the media and the segments, the user behaviorcomprising viewing behavior with respect to the media and the segments;logging user behavior with respect to the segments in memory;determining normal user behavior with respect to the media; storing suchnormal user behavior in memory; comparing logged user behavior withrespect to interaction with a segment of the media with the determinednormal user behavior with respect to the media; determining whetherlogged user behavior of a particular media segment of the media filedeviates from normal relative to the determined normal user behavior;responsive to an not normal determination of a particular media segment,tagging a media segment in memory; and communicating with a user deviceconfigured to display indicia indicating the segments tagged as notnormal.
 15. The non-transitory computer-readable media storingprocessor-executable instructions of claim 14, the operations furthercomprising: monitoring when a user chooses from the group consisting ofpausing, playing, skipping, repeating, and combinations thereof.
 16. Thenon-transitory computer-readable media storing processor-executableinstructions of claim 14, the operations further comprising: responsiveto a not normal determination of a particular approximate ten secondmedia segment, tagging a media segment in memory.
 17. The non-transitorycomputer-readable media storing processor-executable instructions ofclaim 14, the operations further comprising: responsive to a not normaldetermination of a particular media segment is greater than one standarddeviation, tagging a media segment in memory.
 18. The non-transitorycomputer-readable media storing processor-executable instructions ofclaim 14, the operations further comprising: communicating with a userdevice configured to display a viewer intensity chart regarding thesegments tagged as not normal.